<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>补助项类型</title>
    <link rel="stylesheet" href="../../layui/css/layui.css" />
</head>
<style>
    .chaxun {
        display: inline;
        width: 90%;
        margin-right: 20px;
    }
    
    .dignbuanniu {
        margin: 15px 0;
    }
    
    .dingbuyihang {
        padding: 0px 10px;
        width: 90%;
    }
    /*水平竖直居中  */
    
    .juzhong {
        margin-top: 30px;
        display: flex;
        justify-content: center;
        align-items: center;
    }
    
    .xingzhengcunxinxitianjia {
        width: 60%;
    }
    
    .hanggao {
        margin: 15px 0px;
    }
    
    .xiangqingtitle {
        color: #999;
    }
    
    .xiangqingcontent {
        text-align: left;
        width: 50%;
    }
    
    .xiangqingjianjie {
        width: auto;
        text-align: left;
        text-indent: 40px;
        padding: 9px 40px;
    }
</style>

<body>
    <div style="padding: 20px; background-color: #f2f2f2;">
        <div class="layui-card layui-col-space15" style="padding: 20px; background-color: #fff;">
            <div class="layui-card-body">
                <!-- 顶部按钮 -->
                <form class="layui-form" action="" lay-filter="saixuan">
                    <div class="layui-row">

                        <div class="layui-col-xs1 layui-col-sm1 layui-col-md1 dignbuanniu">
                            <button type="button" class="layui-btn" onclick="tianjia()">
                        <i class="layui-icon layui-icon-addition"></i>&nbsp;&nbsp;添加
                      </button>
                        </div>

                        <div class="layui-col-xs1 layui-col-sm1 layui-col-md1 dignbuanniu">
                            <button type="button" class="layui-btn layui-btn-danger" onclick="shanchucheck()">
                        <i class="layui-icon layui-icon-delete"></i>&nbsp;&nbsp;删除
                      </button>
                        </div>
                        <div class="layui-col-xs3 layui-col-sm3 layui-col-md1 dignbuanniu"></div>

                        <div class="layui-col-xs3 layui-col-sm3 layui-col-md2 dignbuanniu">
                            <label class="layui-form-label dingbuyihang">
                                <select id="qu1" name="areaId" lay-verify="required" lay-filter="qu1">
                                    <option value="">地区筛选(区/县)</option>
                                </select>
                            </label>
                        </div>

                        <div class="layui-col-xs2 layui-col-sm2 layui-col-md2 dignbuanniu">
                            <label class="layui-form-label dingbuyihang">
                                <select id="zhen1" name="townid" lay-verify="required" name="townId" lay-filter="zhen1">
                                    <option value="">地区筛选(镇/街道)</option>
                                </select>
                            </label>
                        </div>
                        <div class="layui-col-xs2 layui-col-sm2 layui-col-md2 dignbuanniu">

                            <label class="layui-form-label dingbuyihang">
                        <select name="villageId" lay-verify="required" id="cun1" name="villageId">
                            <option value="">地区筛选(村)</option>
                        </select>
                            </label>
                        </div>
                        <div class="layui-col-xs2 layui-col-sm2 layui-col-md2 dignbuanniu">
                            <input type="text" name="keyWords" required lay-verify="required" placeholder="查询内容或字段" autocomplete="off" class="layui-input chaxun">
                        </div>
                        <div class="layui-col-xs1 layui-col-sm1 layui-col-md1 dignbuanniu">
                            <button type="button" class="layui-btn" onclick="chaxun()">
                                <i class="layui-icon layui-icon-search"></i>&nbsp;&nbsp;查询
                              </button>
                        </div>

                    </div>
                </form>
                <!-- 底部表格 -->
                <table id="hukouqianyi" lay-filter="biaoge"></table>

            </div>
        </div>
    </div>
</body>
<script src="../../layui/layui.js"></script>
<script src="../../mock/mock/mock-min.js"></script>
<script src="../../js/jquery-3.4.1.js"></script>
<script src="../../mock/mock1.js"></script>

<script>
    var table
    var form
    var option
    layui.use(["table", "jquery", "form"], function() {
        table = layui.table;
        form = layui.form;
        form.render();
        //监听提交
        form.on('submit(tijiao)', function(data) {
            chongzai()
        });
        //监听编辑
        form.on('submit(bianji)', function(data) {
            chongzai()
        });
        table.on('tool(biaoge)', function(obj) {
            console.log(obj);
            switch (obj.event) {
                // 编辑页面
                case 'edit':
                    layer.open({
                        type: 1,
                        title: "编辑",
                        content: `
                        <div class="juzhong">
                        <form class="layui-form xingzhengcunxinxitianjia" lay-filter="bianji" action="">
                            <div class="layui-form-item">
                        <label class="layui-form-label">所属区</label>
                        <div class="layui-input-block">
                            <select disabled id="qu" name="areaId" lay-verify="required">
                                <option value="">请选择所属区</option>
                            </select>
                        </div>
                    </div>
                    <div class="layui-form-item">
                        <label class="layui-form-label">所属镇</label>
                        <div class="layui-input-block">
                            <select disabled id="zhen" name="townId" lay-verify="required">
                                <option value="">请选择所属村</option>
                            </select>
                        </div>
                    </div>
                    <div class="layui-form-item">
                        <label class="layui-form-label">所属村</label>
                        <div class="layui-input-block">
                            <select disabled id="cun" name="villageId" lay-verify="required">
                                <option value="">请选择所属村</option>
                            </select>
                        </div>
                    </div>
                    <div class="layui-form-item">
                        <label class="layui-form-label">名称</label>
                        <div class="layui-input-block">
                            <input type="text" value="` + obj.data.name + `"  name="name" required lay-verify="required" placeholder="补助项类型名称" autocomplete="off" class="layui-input">
                        </div>
                    </div>
                </form>
                </div>
`,
                        offset: "auto",
                        area: ["600px", "300px"],
                        success: function() {
                            areas.forEach(item => {
                                $('#qu')[0].innerHTML += ` <option value="` + item.id + `">` + item.name + `</option>`
                            })
                            towns.forEach(item => {
                                $('#zhen')[0].innerHTML += ` <option value="` + item.id + `">` + item.name + `</option>`
                            })
                            villages.forEach(item => {
                                    $('#cun')[0].innerHTML += `<option value="` + item.id + `">` + item.name + `</option>`
                                })
                                // 1.区选择
                            form.on('select(qu)', function(data) {
                                $('#zhen').empty()
                                $('#zhen')[0].innerHTML += ` <option value="">请选择所属镇</option>`
                                towns.forEach(item => {
                                    if (item.areaId == data.value) {
                                        $('#zhen')[0].innerHTML += ` <option value="` + item.id + `">` + item.name + `</option>`
                                    }
                                })
                                form.render('select', "tianjia")
                            });
                            // 2.镇监听
                            form.on('select(zhen)', function(data) {
                                $('#cun').empty()
                                $('#cun')[0].innerHTML += ` <option value="">请选择所属村</option>`
                                villages.forEach(item => {
                                    if (item.townId == data.value) {
                                        $('#cun')[0].innerHTML += ` <option value="` + item.id + `">` + item.name + `</option>`
                                    }
                                })
                                form.render('select', "tianjia")
                            });
                            $('#qu').val(obj.data.areaId);
                            $('#zhen').val(obj.data.townId);
                            $('#cun').val(obj.data.villageId);
                            form.render('select', "bianji")
                        },
                        btn: ['保存编辑', ], //可以无限个按钮
                        btnAlign: "c",
                        btn1: function() {
                            var data = form.val("bianji");
                            data.townId = getvillage(data.villageId).townId
                            data.id = obj.data.id
                            data.areaId = areas[0].id;
                            console.log(data)
                            $.ajax({
                                url: url + "subsidytype/addoredisubsidytype",
                                method: "post",
                                data: data,
                                success: function(data) {
                                    console.log(data)
                                    if (data.code === 200) {
                                        layer.closeAll();
                                        table.reload("biaoge1", option);
                                        layer.msg("修改成功")
                                    } else {
                                        layer.msg(data.msg)
                                    }
                                },
                                error: function(err) {
                                    layer.msg("修改失败")
                                    layer.closeAll();
                                }
                            })

                        }
                    });
                    break;
                case 'delete':
                    layer.open({
                        type: 1,
                        title: '删除',
                        offset: "auto",
                        content: `<div style="font-size: 14px; color: #606266;line-height: 100px;height: 100px;text-align: center;">确认要删除当前项吗!</div>`,
                        area: ["350px", "200px"],
                        btn: ['删除', '取消', ], //可以无限个按钮
                        btn1: function() {
                            var data = {};
                            data.ids = obj.data.id
                            console.log(data)
                            $.ajax({
                                url: url + "subsidytype/deletesubsidytype",
                                method: "get",
                                data: data,
                                success: function(data) {
                                    console.log(data);
                                    if (data.code == 200) {
                                        layer.msg('删除成功!')
                                        table.reload("biaoge1", option);
                                    } else {
                                        layer.msg(data.msg)
                                    }
                                },
                                error: function(err) {
                                    layer.msg('删除失败!')
                                },
                            });
                            layer.closeAll();
                        },
                        btn2: function() {
                            layer.msg('已取消操作')
                        }
                    })
                    break;
                default:
                    break;
            }
        })
        chongzai()
            // 获取所有列表数据的参数
        option = {
            id: 'biaoge1',
            elem: "#hukouqianyi",
            url: url + "subsidytype/querysubsidytype",
            page: true,
            title: "补助项类型信息",
            size: "lg",
            limits: [10, 20, 50, 100, 200, 500],
            headers: {
                token: localStorage.getItem('token')
            },
            text: {
                none: "本页暂无数据,请刷新页面", //默认：无数据。
            },
            request: {
                pageName: "currrntPage", //页码的参数名称，默认：page
                limitName: "size", //每页数据量的参数名，默认：limit
            },
            where: {
                townId: "",
                villageId: "",

            },
            page: {
                curr: 1 //重新从第 1 页开始
            },
            parseData: function(res) {
                if (res.code == "401") {
                    window.parent.window.location.href = "../login/index.html"
                }
                //res 即为原始返回的数据
                return {
                    code: 0, //解析接口状态
                    msg: res.msg, //解析提示文本
                    count: res.data.count, //解析数据长度
                    data: setdata(res.data.subsidytypes), //解析数据列表
                };
            },
            cols: [
                [{
                    type: "checkbox",
                }, {
                    type: "numbers",
                    title: "序号",
                }, {
                    field: "villagename",
                    title: "所属村",
                    align: "center",
                }, {
                    field: "name",
                    title: "补助类型名称",
                    align: "center",
                }, {
                    title: "操作",
                    toolbar: "#caozuo",
                    align: "center",
                }, ],
            ],
        }
        tableIns = table.render(option);

        //添加筛选条件
        areas.forEach(item => {
                // console.log($('#zhen1')[0].innerHTML)
                $('#qu1')[0].innerHTML += ` <option value="` + item.id + `">` + item.name + `</option>`
            })
            // 镇生成
        towns.forEach(item => {
                // console.log($('#zhen1')[0].innerHTML)
                $('#zhen1')[0].innerHTML += ` <option value="` + item.id + `">` + item.name + `</option>`
            })
            //镇生成
        form.on('select(qu1)', function(data) {
            $('#zhen1').empty()
            $('#zhen1')[0].innerHTML += ` <option value="">地区筛选(镇/街道)</option>`
            villages.forEach(item => {
                if (item.areaId == data.value) {
                    $('#zhen1')[0].innerHTML += ` <option value="` + item.id + `">` + item.name + `</option>`
                }
            })
            form.render('select', "saixuan")
        });
        // 村生成
        form.on('select(zhen1)', function(data) {
            $('#cun1').empty()
            $('#cun1')[0].innerHTML += ` <option value="">地区筛选(村)</option>`
            villages.forEach(item => {
                if (item.townId == data.value) {
                    $('#cun1')[0].innerHTML += ` <option value="` + item.id + `">` + item.name + `</option>`
                }
            })
            form.render('select', "saixuan")
        });
        form.render('select', "saixuan")
    });
    // 表格信息重载         (根据列表参数获取所有列表数据)
    function chongzai() {}
    // 控制添加数据用的弹出层
    function tianjia() {
        layer.open({
            type: 1,
            title: "添加",
            content: `
<div class="juzhong">
    <form class="layui-form xingzhengcunxinxitianjia" lay-filter="tianjia" action="">
        <div class="layui-form-item">
            <label class="layui-form-label">所属区</label>
            <div class="layui-input-block">
                <select id="qu" name="areaId" lay-verify="required" lay-filter="qu">
                        <option value="">请选择所属区</option>
                </select>
            </div>
        </div>
        <div class="layui-form-item">
            <label class="layui-form-label">所属镇</label>
            <div class="layui-input-block">
                <select id="zhen" name="townId" lay-verify="required" lay-filter="zhen">
                        <option value="">请选择所属镇</option>
                </select>
            </div>
        </div>
        <div class="layui-form-item">
            <label class="layui-form-label">所属村</label>
            <div class="layui-input-block">
                <select id="cun" name="villageId" lay-verify="required" lay-filter="cun">
                        <option value="">请选择所属村</option>
                </select>
            </div>
        </div>
        <div class="layui-form-item">
            <label class="layui-form-label">名称</label>
            <div class="layui-input-block">
                <input type="text" lay-filter="hukouqianyi" name="name" required lay-verify="required" placeholder="补助项类型名称" autocomplete="off" class="layui-input">
            </div>
        </div>
        <div class="layui-form-item">
            <div class="layui-input-block">
                <button type="button" class="layui-btn tijiao" lay-filter="tijiao">确定</button>
                <button type="reset" class="layui-btn layui-btn-primary" >重置</button>
            </div>
        </div>
    </form>
</div>
`,
            offset: "auto",
            area: ["500px", "500px"],
            success: function() {
                areas.forEach(item => {
                    $('#qu')[0].innerHTML += ` <option value="` + item.id + `">` + item.name + `</option>`
                })
                towns.forEach(item => {
                    $('#zhen')[0].innerHTML += ` <option value="` + item.id + `">` + item.name + `</option>`
                })
                villages.forEach(item => {
                    $('#cun')[0].innerHTML += ` <option value="` + item.id + `">` + item.name + `</option>`
                })
                form.render('select', "tianjia")

                // 1.区选择
                form.on('select(qu)', function(data) {
                    $('#zhen').empty()
                    $('#zhen')[0].innerHTML += ` <option value="">请选择所属镇</option>`
                    towns.forEach(item => {
                        if (item.areaId == data.value) {
                            $('#zhen')[0].innerHTML += ` <option value="` + item.id + `">` + item.name + `</option>`
                        }
                    })
                    form.render('select', "tianjia")
                });
                // 2.镇监听
                form.on('select(zhen)', function(data) {
                    $('#cun').empty()
                    $('#cun')[0].innerHTML += ` <option value="">请选择所属村</option>`
                    villages.forEach(item => {
                        if (item.townId == data.value) {
                            $('#cun')[0].innerHTML += ` <option value="` + item.id + `">` + item.name + `</option>`
                        }
                    })
                    form.render('select', "tianjia")
                });

                $(".tijiao").click(function() {
                    var data = form.val("tianjia");
                    if (data.villageId !== "" && data.name !== "") {
                        data.townId = getvillage(data.villageId).townId
                        data.id = 0
                        data.areaId = areas[0].id;
                        $.ajax({
                            url: url + "subsidytype/addoredisubsidytype",
                            data: data,
                            method: "post",
                            success: function(data) {
                                console.log(data)
                                if (data.code === 200) {
                                    layer.closeAll();
                                    table.reload("biaoge1", option);
                                    layer.msg('添加成功!')
                                } else {
                                    layer.msg(data.msg)
                                }
                            },
                            error: function(err) {
                                console.log(data)
                                layer.msg('添加失败!')
                            },
                        });
                    } else {
                        layer.msg('请完善信息')
                    }

                });
            }
        });
    }
    // 根据上面的删除check选中的进行删除
    function shanchucheck() {
        var checkStatus = table.checkStatus("biaoge1"); //idTest 即为基础参数 id 对应的值
        console.log(checkStatus.data); //获取选中行的数据
        var data = {}
        data.ids = [];
        checkStatus.data.forEach((item) => {
            data.ids.push(item.id);
        });
        console.log(data)
        if (data.ids.length !== 0) {
            $.ajax({
                url: url + "subsidytype/deletesubsidytype",
                method: "get",
                data: data,
                traditional: true, //防止深度序列化
                success: function(data) {
                    if (data.code === 200) {
                        layer.closeAll();
                        table.reload("biaoge1", option);
                        layer.msg("删除成功")
                    } else {
                        layer.msg('删除失败')
                    }
                    console.log(data);

                },
                error: function(err) {
                    layer.msg('删除失败')
                },
            });
        } else {
            layer.msg('请选择本页要删除的项')
        }

    }

    function setdata(data) {
        console.log(data)
        data.forEach(item => {
            item.villagename = getvillage(item.villageId).name
            item.townname = item.townName

        });
        return data;
    }

    function chaxun() {
        var data = form.val("saixuan");
        option.where.areaId = data.areaId
        option.where.townId = data.townId
        option.where.villageId = data.villageId
        option.where.keywords = data.keyWords
        console.log(option.where)
        table.reload("biaoge1", option);
    }
</script>
<!-- 操作框两个按钮的模板 -->
<script type="text/html" id="caozuo">
    <a class="layui-btn layui-btn-xs layui-btn-normal" lay-event="edit">编辑</a>
    <a class="layui-btn layui-btn-xs layui-btn-danger" lay-event="delete">删除</a>
</script>

</html>